const fs = require('fs');

fs.open('./archivos/archivo.txt', 'r', function(err, descriptor) {
    if (err) return console.error(err);

    var bytes = Buffer.alloc(1024);

    fs.read(descriptor, bytes, 0, bytes.length, 0, function(err1, size, bytes) {
        if (err1) throw err1;

        if (size > 0) {
            console.log(bytes.slice(0, size).toString());
        }

        fs.close(descriptor, function(err2) {
            if (err2) throw err2;
        });
    });
});

const fsPromises = fs.promises;
async function LeerArchivo(archivo) {
    let arch;
    try {
        arch = await fsPromises.open(archivo, 'r');

        const bytes = Buffer.alloc(1024);

        const archRead = await arch.read(bytes, 0, bytes.length, 0);

        console.log(archRead.buffer.slice(0, archRead.bytesRead).toString());
    } finally {
        if (arch !== undefined)
            await arch.close();
    }
}
LeerArchivo('./archivos/archivo.txt');

fs.readFile('./archivos/archivo.txt', function(err, data) {
    if (err) {
        console.error(err);
        return;
    }
    console.log(data.toString());
});

const fs = require('fs');
const fsPromises = fs.promises;
const arch = await fsPromises.readFile('./archivos/archivo.txt');

const fs = require('fs');
fs.open('./archivos/archivo2.txt', 'w', function(err, descriptor) {
    if (err) return console.error(err);

    let bytes = new Uint8Array(Buffer.from('Hola mundo!\nFuncion write.'));

    fs.write(descriptor, bytes, 0, bytes.length, 0, function(err1, size, bytes) {
        if (err1) throw err1;

        fs.close(descriptor, function(err2) {
            if (err2) throw err2;
        });

        console.log(`Se escribieron ${bytes.length} bytes.`)
    });
});

const bytes = new Uint8Array(Buffer.from('Hola mundo!\nFuncion write.'));
fs.writeFile('./archivos/archivo2.txt', bytes, function(err, data) {
    if (err) {
        console.error(err);
        return;
    }
    console.log(`Se escribieron ${bytes.length} bytes.`)
});

const fs = require('fs');
const fsPromises = fs.promises;
const bytes = new Uint8Array(Buffer.from('Hola mundo!\nFuncion write.'));
const arch = await fsPromises.writeFile('./archivos/archivo2.txt', bytes);

